package org.xxpay.service.dao.mapper;

import org.apache.ibatis.annotations.Param;
import org.xxpay.core.entity.AlipayCashUser;
import org.xxpay.core.entity.AlipayCashUserExample;

import java.util.List;

public interface AlipayCashUserMapper {
    int countByExample(AlipayCashUserExample example);

    int deleteByExample(AlipayCashUserExample example);

    int deleteByPrimaryKey(int id);

    int insert(AlipayCashUser record);

    int insertSelective(AlipayCashUser record);

    List<AlipayCashUser> selectByExample(AlipayCashUserExample example);

    AlipayCashUser selectByPrimaryKey(int id);

    int updateByExampleSelective(@Param("record") AlipayCashUser record, @Param("example") AlipayCashUserExample example);

    int updateByExample(@Param("record") AlipayCashUser record, @Param("example") AlipayCashUserExample example);

    int updateByPrimaryKeySelective(AlipayCashUser record);

    int updateByPrimaryKey(AlipayCashUser record);

    /** 增加总结算金额 % 更新状态（如果超出限制金额） **/
    int addTotalMoneyAndState(@Param("userId") Integer userId, @Param("addMoney") Long addMoney);

    /** 将昨日金额的数值更新为今日收款总金额， 金额收款总金额改为0 **/
    int resetTodayMoney();

    /** 查询运营平台操作员名称与创建的分账用户数量 **/
    List<AlipayCashUser> selectCountByMgrUser();

    /** 根据mgrUserIds 查询可用分账用户 **/
    List<AlipayCashUser> selectByAvailableWithMgrUserIds(@Param("mgrUserIds") List<Integer> mgrUserIds);


}